import RxRequest_Base from './RxRequest_Base.js'

// 获取本地配置 - get缓存
RxRequest_Base.getLocalCache = () => {
  return new Promise((resolve) => {
    const res = ChuMoJingLing.getCache()
    resolve(res)
  })
}

// 保存本地配置 - save缓存
RxRequest_Base.saveLocalCache = (data = {}) => {
  return new Promise((resolve) => {
    ChuMoJingLing.saveCache(data)
    resolve()
  })
}

RxRequest_Base.cancel = () => {
  // 没有返回值
  ChuMoJingLing.cancel()
}

RxRequest_Base.confirm = (data = {}) => {
  // 没有返回值
  ChuMoJingLing.ok(data)
}

export default RxRequest_Base


/**
 * 触摸精灵
 *
 * 使用  touchelf.return()为触摸内置函数
 */

const ChuMoJingLing = {
  cacheKey: 'RxCMCache'
}

ChuMoJingLing.cancel = () => {
  touchelf.return(JSON.stringify({ type: "cancel" }))
}

ChuMoJingLing.ok = (data = {}) => {
  touchelf.return(
    JSON.stringify({
      type: "ok",
      data: data,
    })
  )
}

ChuMoJingLing.getCache = () => {
  let result = {}
  try {
    result = localStorage.getItem(ChuMoJingLing.cacheKey);
  } catch (error) {
    console.error('ChuMoJingLing.getCache error', error)
  }
  return result
}

ChuMoJingLing.saveCache = (data = {}) => {
  try {
    localStorage.setItem(ChuMoJingLing.cacheKey, JSON.stringify(data));
  } catch (error) {
    console.error('ChuMoJingLing.saveCache error', error)
  }
}
